package com.blueocean_health.care.management.domain.base;

import java.util.Date;
import javax.persistence.*;

public class Role {
    /**
     * 角色id
     */
    @Id
    @Column(name = "role_id")
    private Integer roleId;

    /**
     * 角色名称
     */
    @Column(name = "role_name")
    private String roleName;

    /**
     * 组织项目id
     */
    @Column(name = "team_id")
    private Integer teamId;

    /**
     * 逻辑状态 1：公共角色，2：私有角色
     */
    @Column(name = "is_public_role")
    private Integer isPublicRole;

    /**
     * 类型：1.组织  2.项目
     */
    private String type;

    /**
     * 角色所属一级组织ID
     */
    @Column(name = "first_org")
    private String firstOrg;

    /**
     * 标识组织/项目模块获得负责人，项目经理角色：1:负责人 2:项目经理  null：其他
     */
    private String category;

    /**
     * 创建人
     */
    @Column(name = "create_by")
    private Integer createBy;

    /**
     * 逻辑状态 1正常，2禁用，3 删除
     */
    @Column(name = "is_active")
    private Integer isActive;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 获取角色id
     *
     * @return role_id - 角色id
     */
    public Integer getRoleId() {
        return roleId;
    }

    /**
     * 设置角色id
     *
     * @param roleId 角色id
     */
    public void setRoleId(Integer roleId) {
        this.roleId = roleId;
    }

    /**
     * 获取角色名称
     *
     * @return role_name - 角色名称
     */
    public String getRoleName() {
        return roleName;
    }

    /**
     * 设置角色名称
     *
     * @param roleName 角色名称
     */
    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    /**
     * 获取组织项目id
     *
     * @return team_id - 组织项目id
     */
    public Integer getTeamId() {
        return teamId;
    }

    /**
     * 设置组织项目id
     *
     * @param teamId 组织项目id
     */
    public void setTeamId(Integer teamId) {
        this.teamId = teamId;
    }

    /**
     * 获取逻辑状态 1：公共角色，2：私有角色
     *
     * @return is_public_role - 逻辑状态 1：公共角色，2：私有角色
     */
    public Integer getIsPublicRole() {
        return isPublicRole;
    }

    /**
     * 设置逻辑状态 1：公共角色，2：私有角色
     *
     * @param isPublicRole 逻辑状态 1：公共角色，2：私有角色
     */
    public void setIsPublicRole(Integer isPublicRole) {
        this.isPublicRole = isPublicRole;
    }

    /**
     * 获取类型：1.组织  2.项目
     *
     * @return type - 类型：1.组织  2.项目
     */
    public String getType() {
        return type;
    }

    /**
     * 设置类型：1.组织  2.项目
     *
     * @param type 类型：1.组织  2.项目
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * 获取角色所属一级组织ID
     *
     * @return first_org - 角色所属一级组织ID
     */
    public String getFirstOrg() {
        return firstOrg;
    }

    /**
     * 设置角色所属一级组织ID
     *
     * @param firstOrg 角色所属一级组织ID
     */
    public void setFirstOrg(String firstOrg) {
        this.firstOrg = firstOrg;
    }

    /**
     * 获取标识组织/项目模块获得负责人，项目经理角色：1:负责人 2:项目经理  null：其他
     *
     * @return category - 标识组织/项目模块获得负责人，项目经理角色：1:负责人 2:项目经理  null：其他
     */
    public String getCategory() {
        return category;
    }

    /**
     * 设置标识组织/项目模块获得负责人，项目经理角色：1:负责人 2:项目经理  null：其他
     *
     * @param category 标识组织/项目模块获得负责人，项目经理角色：1:负责人 2:项目经理  null：其他
     */
    public void setCategory(String category) {
        this.category = category;
    }

    /**
     * 获取创建人
     *
     * @return create_by - 创建人
     */
    public Integer getCreateBy() {
        return createBy;
    }

    /**
     * 设置创建人
     *
     * @param createBy 创建人
     */
    public void setCreateBy(Integer createBy) {
        this.createBy = createBy;
    }

    /**
     * 获取逻辑状态 1正常，2禁用，3 删除
     *
     * @return is_active - 逻辑状态 1正常，2禁用，3 删除
     */
    public Integer getIsActive() {
        return isActive;
    }

    /**
     * 设置逻辑状态 1正常，2禁用，3 删除
     *
     * @param isActive 逻辑状态 1正常，2禁用，3 删除
     */
    public void setIsActive(Integer isActive) {
        this.isActive = isActive;
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新时间
     *
     * @return update_time - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}